SCEL: a Language for Autonomic Computing
نویسندگان
چکیده
The autonomic computing paradigm has been proposed to cope with size, complexity and dynamism of contemporary softwareintensive systems. The challenge for language designers is to devise appropriate abstractions and linguistic primitives to deal with the large dimension of systems, and with their need to adapt to the changes of the working environment and to the evolving requirements. We propose a set of programming abstractions that permit to represent behaviors, knowledge and aggregations according to specific policies, and to support programming context-awareness, self-awareness and adaptation. Based on these abstractions, we define SCEL (Software Component Ensemble Language), a kernel language whose solid semantic foundations lay also the basis for formal reasoning on autonomic systems behavior. In this document, we first present the syntax and operational semantics of SCEL. We then demonstrate that adaptation can be naturally modeled in SCEL, and present a simple policy language and its integration with SCEL. Finally, to show expressiveness and effectiveness of SCEL’s design, we present a Java implementation of the SCEL’s programming abstractions and illustrate their use by specifying two case studies from the service provision and robotics domains. ? This work has been partially sponsored by the EU project ASCENS (257414).
منابع مشابه
A Language-Based Approach to Autonomic Computing
SCEL is a new language specifically designed to model autonomic components and their interaction. It brings together various programming abstractions that permit to directly represent knowledge, behaviors and aggregations according to specific policies. It also supports naturally programming self-awareness, context-awareness, and adaptation. In this paper, we first present design principles, sy...
متن کاملThe SCEL Language: Design, Implementation, Verification
SCEL (Service Component Ensemble Language) is a new language specifically designed to rigorously model and program autonomic components and their interaction, while supporting formal reasoning on their behaviors. SCEL brings together various programming abstractions that allow one to directly represent aggregations, behaviors and knowledge according to specific policies. It also naturally suppo...
متن کاملA A formal approach to autonomic systems programming: The SCEL Language
The autonomic computing paradigm has been proposed to cope with size, complexity and dynamism of contemporary software-intensive systems. The challenge for language designers is to devise appropriate abstractions and linguistic primitives to deal with the large dimension of systems, and with their need to adapt to the changes of the working environment and to the evolving requirements. We propo...
متن کاملSelf-expression and Dynamic Attribute-Based Ensembles in SCEL
In the field of distributed autonomous computing the current trend is to develop cooperating computational entities enabled with enhanced self-* properties. The expression self-* indicates the possibility of a component inside an ensemble, i.e. a set of collaborative autonomic components, to self organize, heal (repair), optimize and configure with little or no human interaction. We focus on a ...
متن کاملFormalising Adaptation Patterns for Autonomic Ensembles
Autonomic behaviour and self-adaptation in software can be supported by several architectural design patterns. In this paper we illustrate how some of the componentand ensemble-level adaptation patterns proposed in the literature can be rendered in SCEL, a formalism devised for modelling autonomic systems. Specifically, we present a compositional approach: first we show how a single generic com...
متن کامل